Data Center (DC) architecture generally consists of a large number of compute and storage resources that are interconnected through a scalable Layer-2 or Layer-3 infrastructure. In addition to this networking infrastructure running on hardware devices the DC network includes software networking components (vswitches) running on general purpose computer, and dedicated hardware appliances that supply specific network services such as load balancers, ADCs, firewalls, IPS/IDS systems etc. The DC infrastructure can be owned by an Enterprise or by a service provider (referred as Cloud Service Provider or CSP), and shared by a number of tenants. Compute and storage infrastructure are virtualized in order to allow different tenants to share the same resources. Each tenant can dynamically add/remove resources from the global pool to/from its individual service.
DC network must be able to dynamically assign resources to each tenant while maintaining strict performance isolation between different tenants (e.g., different companies). Furthermore, tenants can be sub-divided into sub-tenants (e.g., different corporate departments) with strict isolation between them as well. For example, an enterprise requires resources in a CSP DC that are partitioned between different departments.
Data Center (DC) network infrastructure is designed to provide connectivity service between the outside world and different compute and storage resources, such as IP hosts (e.g. VMs on server blades or bare metal servers), associated storage and service appliances (FW, LB, NAT). From a basic connectivity perspective this is usually implemented using a set of VLANs (L2) interconnected via IP routers (L3). As Cloud Providers are trying to increase their revenues by expanding their scope to address more and more customers, there is a need to move away from basic VLANs and shared IP routing context to a more scalable architecture.